﻿using Estsh.Core.Base;
using Estsh.Core.Model.Result;
using Estsh.Core.Models;
using Estsh.Core.Services;
using Estsh.Core.Util;
using System.Collections; 

namespace Estsh.Core.Wms.IServices
{
    public interface ILoginService : IBaseService<BaseEntity>
    {
        /// <summary>
        /// 登陆
        /// </summary>
        /// <param name="userNo">登陆账号</param>
        /// <param name="userPwd">密码</param>
        /// <param name="factoryId">工厂ID</param>
        /// <param name="factoryName">工厂名称</param>
        /// <returns>返回结果用动态对象接收数据</returns>
        public List<SysEmp> RunLogin(string userNo, string userPwd, string factoryId, string factoryName);
        /// <summary>
        /// 获取工厂信息
        /// </summary>
        /// <param name=""></param>
        /// <returns>返回结果用动态对象接收数据</returns>
        public List<SysFactory> GetFactoryInfo();
        /// <summary>
        /// 通过用户账号获取用户ID与用户名称
        /// </summary>
        /// <param name="userNo">登陆账号</param>
        /// <returns>返回结果用动态对象接收数据</returns>
        public List<SysEmp> GetUserInfo(string userNo);

        /// <summary>
        /// 通过用户账号获取用户ID菜单权限
        /// </summary>
        /// <param name="userID"></param>
        /// <returns>返回结果用动态对象接收数据</returns>
        public List<GetMenuList> GetRole(string userID);

        public List<SysFactory> GetFactoryInfo(string factory_id);

        public List<SysEmp> GetRoleName(string loginId);
    }
}
